import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;

import threads.BuscaNFBlockingQueue;
import threads.BuscaNFLock;
import threads.BuscaNFWaitNotify;
import threads.ExibeComissao;
import threads.ProcessaNFBlockingQueue;
import threads.ProcessaNFLock;
import threads.ProcessaNFWaitNotify;
import entidades.Nota;


public class Main {
    /*
	public static void main(String[] args) {
		Nota nota = new Nota();
		int lote = 20;
		nota.setLote(lote);
		BlockingQueue<Nota> listaBlocking = new ArrayBlockingQueue<Nota>(lote);//plus
		nota.setListaBlockingQueue(listaBlocking);
		for (int i = 0; i < 1; i++) {
			ProcessaNFBlockingQueue procQueue = new ProcessaNFBlockingQueue(nota, i);
			procQueue.start();
		}
		BuscaNFBlockingQueue buscaQueue = new BuscaNFBlockingQueue(nota, 0);
		buscaQueue.start();
		for (int i = 0; i < 1; i++) {
			ProcessaNFLock procLock = new ProcessaNFLock(nota, i);
			procLock.start();
		}
		BuscaNFLock buscaLock = new BuscaNFLock(nota, 0);
		buscaLock.start();
		
		//nota.setInicio(0);
		for (int i = 0; i < 1; i++) {
			ProcessaNFWaitNotify procWait = new ProcessaNFWaitNotify(nota,i+1);
			procWait.start();
		}
		BuscaNFWaitNotify calcWait = new BuscaNFWaitNotify(nota,0);
		calcWait.start();					
		
		ExibeComissao exibe = new ExibeComissao(nota, 0);
		exibe.start();
	}*/
}
